The present invention relates to a data processing system, a data transmission apparatus, a data receiving apparatus, a data processing method, and a computer program. More particularly, the present invention relates to a data processing system, a data transmission apparatus, a data receiving apparatus, a data processing method, and a computer program, which are capable of executing various types of information processing, such as communication, by efficiently using functions possessed by each device in a user environment in which resources as a plurality of information processing apparatuses can be used.
In recent years, data transfer of image, speech data, etc., via various communication media, such as the Internet communication, has been actively performed. Also, what is commonly called a ubiquitous computing network in which information devices such as personal computers (PCs), information home appliances, and portable terminals exist all around the household and offices and are interconnected with each other is being realized.
As described above, in a ubiquitous environment in which various information devices are ubiquitous, a plurality of devices which can be used simultaneously by a user exist in the neighborhood, and it is possible for the user to selectively use the plurality of devices or to concurrently use the plurality of devices. As a result of using the plurality of devices, efficient information processing in which the respective feature functions possessed by the plurality of devices, which is not possible by a single device possessed by a user, becomes possible.
For example, when communication with a communication device of another user via the Internet is performed using one communication device, high-quality communication can be realized by using together the functions of peripheral devices differing from the communication device in use.
In order to efficiently use such functions of a plurality of devices, there is a demand for service platforms for realizing environment-adaptive communication by dynamically combining the functions of a plurality of information processing apparatuses to be constructed. At present, as a technique for automatically setting devices for realizing the service platforms, Jini and UPnP (Universal Plug and Play) have been proposed.
UPnP is a technical specification for connecting devices, such as personal computers and peripheral devices, AV devices, telephone sets, home appliance products in a household, over a network so that functions are provided to each other. UPnP is proposed by Microsoft Corporation in 1999 and is supported by 20 or more companies, such as Intel Corporation, 3Com Corporation, AT&T, and Dell Computer Corporation. UPnP is based on a technique which is standard in the Internet and aims to function by merely being connected to the network without involving complex operations and setting operation. For the network infrastructure, Ethernet which is most widely used in a personal computer LAN, as well as standards for household LAN, such as HomePNA and HomeRF, are supported.
Jini is a technical specification for connecting various devices, such as personal computers, peripheral devices, AV devices, telephone sets, home appliance products, over a network so that functions are provided to each other. Jini is proposed by Sun Microsystems Incorporated, and is supported by many major companies, such as IBM Corporation, Cisco Systems, Motorola Inc., Canon Corporation, Sharp Corporation, and Sony Corporation. Since Jini is based on the JAVA technology of Sun Microsystems Incorporated, Jini is not dependent on a specific OS and a specific microprocessor. Devices compliant with Jini instantly functions by merely being connected to the network without involving complex operations and setting operation. In order to use Jini, it is necessary to install JVM (JAVA Virtual Machine), which is a JAVA execution environment, or to be able to use JVM installed by another device on the network.
However, the above-described Jini and UPnP techniques merely provide existing services by expanding the automatic setting mechanism of the OS and the network. In order to provide environment-adaptive communication, it is preferable that, not only simple automatic setting, but also changes in the user environment, which occur as a result of the movement of the user and the on/off state of a device be taken into consideration. Furthermore, it is preferable to realize more flexible environment adaptation, in which functions possessed by neighboring devices are dynamically connected in order to transparently maintain a plurality of sessions or in order to establish a session.